const express = require("express");
const bodyParser = require("body-parser");
const fs = require("fs");
const app = express();
app.use(express.static("www"));
app.use(bodyParser.urlencoded({ extended: false }));

app.post("/denglu", function (req, res) {
    console.log(req.body);
    fs.readFile("./users.txt", function (err, data) {
        if (err) {
            res.send("登录失败")
            return;
        }
        var arr = data.toString().split('$');
        var arr1=[];
        var flag =false;
        for (let i = 0; i < arr.length; i++) { 
             arr1.push(JSON.parse(arr[i])); 
            if (arr1[i].username == req.body.username&&arr1[i].password == req.body.password) { 
                flag=true;
            }
        }
        if(flag){
            res.send("登录成功");
            console.log('登录成功');
        }else{
            console.log('用户名或密码错误');
            res.send("用户名或密码错误");
        }
    })
})

app.post("/zhuce", function (req, res) {
    // console.log(req.body);
    // {username:"",password:""}
    fs.readFile("./users.txt", function (err, data) {
        // if(!err){
        //     console.log(data); //读取的users文件的内容
        //     console.log(data.toString()); //读取的users文件的内容
        // }

        if (err) {
            res.send("注册失败");
            return;
        }
        if (data.toString()) {
            console.log("有内容");
        }
        // console.log(data.toString());
        if (data.toString()) {
            // console.log("有内容");
            var str1 = data.toString(); //`{username:"",password:""}${username:"",password:""}`
            // console.log("str",str1);
            var arr = str1.split("$"); //[`{username:"",password:""}`,`{username:"",password:""}`]
            // console.log("arr",arr);
            var arr1 = arr.map((item) => JSON.parse(item));
            // console.log("arr1",arr1);
            var isShow = true;
            for (var i = 0; i < arr1.length; i++) {
                // arr1[i]
                if (arr1[i].username == req.body.username) {
                    isShow = false;
                }
            }
            // 
            if (isShow) {
                // 表示上面的循环内的判断没有被执行过 也就是没有当前用户
                var str = JSON.stringify(req.body);
                fs.appendFile("./users.txt", "$" + str, function (err) {
                    if (err) {
                        console.log("添加失败");
                    } else {
                        console.log("添加成功");
                    }
                });
                res.send("注册成功")
            } else {
                // 当前用户已存在
                res.send("当前用户已存在")
            }


        } else {
            console.log("文档中还没有内容");
            var str = JSON.stringify(req.body);
            fs.appendFile("./users.txt", str, function (err) {
                if (err) {
                    console.log("添加失败");
                } else {
                    console.log("添加成功");
                }
            });
            res.send("注册成功")
        }
    })
})


app.listen(3001, () => {
    console.log("http://localhost:3001");
})